/**
 * <p>Title: CNPEC 常用的工具类 </p>
 * <p>Description: IMS</p>
 * <p>Copyright: Copyright (c) 2009</p>
 * <p>Company: CNPEC</p>
 */
package com.mes.cloud.domain.util;

import java.security.SecureRandom;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;

/**
 * 常用的工具类
 * 
 * @author yang yi
 * @version 1.0 $Id: UtilTool.java,v 1.0 2009/07/20$
 */
public class UtilTool {

    /**
     * 功能：获取36位唯一码
     * 
     * 用时间戳加上22位随机数生成
     * 
     * @return 36位唯一码
     * 
     */
    public static String getRandomUUID() {
	// 创建时间戳

	Date dateNow = new Date();
	SimpleDateFormat dateFormat = new SimpleDateFormat("yyyyMMddHHmmss");
	String dateNowStr = dateFormat.format(dateNow);
	StringBuffer sb = new StringBuffer(dateNowStr);

	// 创建随机对象
	SecureRandom rd = new SecureRandom();

	// 产生4位随机数
	String n = "";
	int rdGet; // 取得随机数

	do {
	    rdGet = Math.abs(rd.nextInt()) % 10 + 48; // 产生48到57的随机数(0-9的键位值)
	    // rdGet=Math.abs(rd.nextInt())%26+97; //产生97到122的随机数(a-z的键位值)
	    char num1 = (char) rdGet;
	    String dd = Character.toString(num1);
	    n += dd;
	} while (n.length() < 22);// 假如长度小于4
	sb.append(n);

	// 4、返回唯一码

	return sb.toString();
    }

	public static void main(String[] args) {
		System.out.println(getRandomUUID());
	}
}